StreetComplete
StreetComplete | |
---|---|
Authors: | Tobias Zwick and contributors - app has more detailed list of credits, lists also translators |
License: | GNU General Public License v3 (free of charge) |
Platform: | Android 5.0+ |
Status: | Active |
Version: | 59.3 releases (2024-10-26) |
Languages: | Amharic, Arabic, Asturian, Bulgarian, Bosnian, Catalan, Czech, Danish, German, Greek, English, Australian English, British English, Esperanto, Spanish, Basque, Persian, Finnish, French, Galician, Croatian, Hungarian, Armenian, Indonesian, Italian, Japanese, Korean, Lithuanian, Latvian, Malayalam, Norwegian Bokmål, Dutch, Norwegian Nynorsk, Polish, Portuguese, Brazilian Portuguese, Romanian, Russian, Slovak, Serbian, Swedish, Swahili, Thai, Turkish, Ukrainian, Chinese (China), and Chinese (Taiwan) |
Website: | https://streetcomplete.app |
Install: | |
Source code: | streetcomplete/StreetComplete GitHub |
Programming language: | Kotlin |
Surveyor app for Android |
StreetComplete is an easy to use OpenStreetMap editor for Android phones and tablets, used for mapping in the field.
The app is made specifically for casual contributors and beginners as no prior knowledge about OpenStreetMap (such as tagging schemes) is required to contribute with this app. Furthermore, there is a bit of gamification and statistics that aim to introduce and try to inspire users to venture deeper into the world of OpenStreetMap.
Functionality
The app displays places where data can be added to OpenStreetMap through the app as quest pins on a map. Each of these quests can easily be solved by answering a simple question, like for example "Is this street lit?". The answers given are then processed and directly uploaded into the OSM database in the name of the user's OSM account.
So, unlike most other OSM editors, the actual data is not displayed directly on the map and no geometry can be changed (except splitting up ways). Contribution with this app happens primarily by answering these quests.
However, since v45.0, advanced users can leverage overlays. Overlays visualize one aspect of OSM data (such as sidewalks, addresses, ...) on top of the map and allows the user to edit this data in a quick and easy fashion (read more in this blog post).
Quests
See the quests list for an overview which quests can be solved with this editor.
Overlays
- Main article: StreetComplete/Overlays
There are the following overlays available:
- Street lighting: Specify whether ways are lit, see lit=* (since v45.0)
- Surfaces: Specify the surface type of roads, see surface=* (since v52.0)
- Sidewalks: Specify whether roads have sidewalks, see sidewalk=* (since v45.0)
- Bike paths: Specify whether roads have bike lanes, shared lanes, or separate paths, see cycleway=*, bicycle=*, ... (since v50.0)
- Street parking: Specify whether there is street parking and what kind, see Street parking (since v47.0)
- Addresses: Specify whether objects have address details like street names and house numbers, see addr:*=* (since v48.0)
- Places: Specify whether objects have shops or adding nodes for shops and shop-like places, see shop=*, amenity=*, craft=*, etc... (since v48.0) Expanded by hotels, hospitals, schools therefore renamed from Shops to Places (since v57.0)
- Things: Tag map features like benches, bicycle parkings, roadside trees, ATMs and other street furniture in general (since v57.0)
- Buildings: Specify the type of buildings, see building=* (since v57.0)
Additional Features
It is possible to add and contribute to OSM notes with this app. Notes phrased as questions (contain a question mark) are shown to all StreetComplete users, enabling them to add the requested information on-site. Users of this app can directly add photos (since v4.0) and GPS tracks (since v44.0) to notes. Photos are hosted while the notes are open and deleted from the server 7 days after the notes are closed. [1]
Albeit modification of geometry is in general not possible with this app, it is possible to split ways when the property that is being asked about in a quest does not span the entire highlighted section (since v14.0) and to move POIs (since v50.0).
For certain more volatile properties of map features (such as opening hours), users are periodically asked again in certain intervals to verify if the input data is still correct, thus helping to keep the map data up to date (since v23.0). For shops in particular, users can directly specify what is there now in case the shop closed down (since v28.0).
Through contribution with this app, users are able to earn achievements (since v19.0) and look at their contribution statistics with the app. Earned achievements unlock certain links to be added to their link collection within the app. These links mostly serve to either introduce the user to OpenStreetMap or showcase an interesting OpenStreetMap-based project.
The app fully supports Android's night mode, including a dark theme for the displayed map (since v11.0).
After an area has been downloaded, the app is fully usable offline in that area, even after a restart of the app or device. The answers can be uploaded later and in case the data has changed in the meantime, there is smart automatic conflict resolution (enhanced in v29.0 and again in v32.0).
A team mode allows for "mapping parties" of up to 12 people to map the neighbourhood together at the same time, so that the questions are divided among the participants (since v31.0).
Measuring lengths with augmented reality is supported since v41.0. In v51.0, this functionality has been outsourced into a separate app, StreetMeasure.
Since v50.0, it is possible to share which quests are enabled via QR code or URL.
FAQ
See the FAQ.
Contributing
You can help to translate the app via POEditor. This help is welcomed, translation is - as usual - part of creating the software where developers especially need help.
Suggestions, issue reports, feature requests can be made and other contributions be submitted on GitHub. Before proposing new quest types, please read the guidelines for new quests and see the quests list for an overview which quest types already exist. For new overlays, please read the guidelines for new overlays.
Writing code improving StreetComplete and submitting pull requests is also welcomed - see "Contributing" file for more info.
The author of the app also accepts donations, see the project home on GitHub for more information.
Internals
The app uses Tangram-ES for displaying the map.
It directly uses the OpenStreetMap API (via Osmapi (Java)) to download the data and upload the answers. Up till before v26.0, the Overpass-API was used for download.
History
Initial public commit was made on 2016-07-02.
The first changeset marked as created by SC is from 2016-11-30
Adoption
The page editor usage stats and the OpenStreetMap statistics page has updated info about the adoption of editors, including StreetComplete.
In 2021, StreetComplete become the 2nd editor by number of its users, with 21.9k users, only after iD.
In 2022, StreetComplete become the 4th editor by number of edits, with ~12.9 million edits in that year, after JOSM, iD and RapiD. Even though the absolute number is impressive, compared to the other three it seems insignificant. However, the number of edits metric considerably over-represents edits that involve changing or adding geometry like adding a simple building which counts as at least 5 edits or (ever so slightly) adjusting the position of a road with 100 nodes which counts as 100 edits. Edits made with StreetComplete are in general not edits that change geometry.
See also
- SCEE - StreetComplete fork for experienced mappers
- OpenStop - similar App as StreetComplete but dedicated to public transport
- GoMap!! - fully featured editor for iOS (since 2023-02 has the ability to show the quests from StreetComplete and create our own)
- Vespucci - fully featured editor for Android with full and direct access to OSM data. But more complicated to use.
- Osm Go! - easy to use POI web editor
- Every Door - efficient editor for iOS and Android
- Summary of what needs to be done to have iOS port of StreetComplete
Web links
- StreetCompleteness - tool that analyzes the completeness of StreetComplete quests for a given city (proprietary, not maintained by SC authors).
- Some statistics for StreetComplete